<?php


namespace EchoPHP\Facades;

use EchoPHP\Database\TuxedoDriver\TuxedoMultiTransactionStatement;
use EchoPHP\Database\TuxedoDriver\TuxedoTransactionStatement;

/**
 * 数据库操作类
 * @method static \EchoPHP\Database\Connections\Connection connect(string $name = null)
 * @method static \EchoPHP\Database\Connections\Connection reconnect(string $name = null)
 * @method static void disconnect(string $name = null)
 * @method static array select(string $query, array $bindings = [], int $rowNumFrom = 0, int $rowNumTo = 0)
 * @method static \Generator selectCursor(string $query, array $bindings = [], int $rowNumFrom = 0, int $rowNumTo = 0)
 * @method static mixed selectOne(string $query, array $bindings = [])
 * @method static bool insert(string $query, array $bindings = [])
 * @method static int update(string $query, array $bindings = [])
 * @method static int delete(string $query, array $bindings = [])
 * @method static bool execute(string $query, array $bindings = [])
 * @method static bool executeStatement(string $query, array $bindings = [])
 * @method static int executeWithAffectedRows(string $query, array $bindings = [])
 * @method static int getLastInsertId(string $sequence = null)
 * @method static array prepareBindings(array $bindings)
 * @method static array prepareStatement(string $query, array $bindings = [])
 * @method static array prepareTransactionStatement(bool $rollbackIfNoAffects, TuxedoStatement ...$tuxedoStatements)
 * @method static TuxedoMultiTransactionStatement multiTransaction(TuxedoTransactionStatement ...$tuxedoTransactionStatements)
 * @package EchoPHP\Facades
 */
class Db extends Facade {

    protected static function getFacadeClass() {
        return 'db';
    }
}